Skip to content

Conversation

@nirmoy
Copy link
Collaborator

@nirmoy nirmoy commented Jan 27, 2026

Add I3C bus support, dw-i3c-master driver ACPI/Tegra410 enablement, and SPD5118 hwmon for DDR5 memory temperature monitoring

https://bugs.launchpad.net/ubuntu/+source/linux-nvidia/+bug/2139154

Akhil R and others added 12 commits January 27, 2026 05:51
…pport SETAASA

Add the 'mipi-i3c-static-method' property to specify which discovery
method an I3C device supports during bus initialization. The property
will be used specifically if an I3C device requires SETAASA for
device discovery and address assignment. ENTDAA and SETDASA will be
supported by default if this property is absent.

This also removes the requirement that all I3C devices should support
Dynamic Address Assignment (DAA). Hence remove statements that mentions
otherwise.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
ACPI 6.3 specifies byte 8 of I2C Serial Bus Connection descriptor to be
used for Legacy Virtual Register (LVR) data as specified in the MIPI
I3C Specification for an I2C device connected to an I3C Host Controller.

Update the rsconvert_info to include this field. For I2C devices on an
I2C bus, this field is Reserved and unused.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Replace all OF specific functions with unified device property functions
as a pre-requisite to support both ACPI and device tree.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Use _ADR and mipi-i3c-static-address properties to follow
the MIPI I3C Discovery and Configuration Specification [1] and get
the I2C device from the ACPI I2C resource descriptor.

[1] https://www.mipi.org/specifications/disco

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add device discovery support for SPD5118, SPD5108 and similar devices
attached to DDR5 memory modules via I3C bus which uses SETAASA instead
of ENTDAA. Follow the guidelines proposed by the MIPI Discovery and
Configuration Specification [1] for discovering such devices.

These devices differ from typical I3C devices in their initialization
requirements. Unlike standard I3C devices that receive dynamic addresses
through ENTDAA (Enter Dynamic Address Assignment), SPD devices require
the SETAASA (Set All Addresses to Static Address) CCC command to map
their static addresses to dynamic addresses. Additionally, it is not
mandatory for these devices to implement standard CCC commands like
GETPID, GETDCR, or BCR retrieval.

[1] https://www.mipi.org/specifications/disco

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Devices using SETAASA for address assignment are not required to have
a 48-bit PID according to the I3C specification. Allow such devices to
register and use the static address where PID was required.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add SETAASA and SETHID to the supported CCC commands to support
SPD devices which requires SETAASA for device enumeration.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
…ions for ACPI

Clock and reset functions do not support ACPI based enumeration. Do not
call them when using the ACPI. Also add a device property to read the
clock frequency from ACPI table.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Update variable names to generic names and add Tegra410 ACPI ID to
support the I3C controller in Tegra410.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add support for I3C based communication to SPD5118 devices.

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Add I3C and SPD5118 device as module to the defconfig

Signed-off-by: Akhil R <akhilrajeev@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Signed-off-by: Nirmoy Das <nirmoyd@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant